home *** CD-ROM | disk | FTP | other *** search
/ L' Effet Pommier 3 / L'Effet Pommier - Volume 03.iso / HyperCard-SuperCard / reference / Reference Frame / card_4160.txt < prev    next >
Text File  |  1989-07-09  |  11KB  |  516 lines

  1. -- card: 4160 from stack: in
  2. -- bmap block id: 5798
  3. -- flags: 4000
  4. -- background id: 2889
  5. -- name: format
  6. ----- HyperTalk script -----
  7. on openCard
  8.   hide menuBar
  9. end openCard
  10.  
  11.  
  12. on closeCard
  13.   global prefix, wrtNumbers, numberAffix, howMany, order, affix , authorOrder, authorsAffix, nBlankL
  14.  
  15.   set the cursor to 4
  16.   put "Title,Authors,Journal,Volume,Number" into cardOrder
  17.   put cardOrder & ",Beginning Page,Ending Page,Year" into cardOrder
  18.   put empty into prefix
  19.   put empty into numberAffix
  20.   put "0" into howMany
  21.   put empty into order
  22.   put empty into affix
  23.   put empty into authorOrder
  24.   put empty into authorsAffix
  25.   put "0" into nBlankL
  26.  
  27.   if card field "prefix" is not empty then
  28.     put card field "prefix" into prefix
  29.   end if
  30.   if card field "# blank lines" is not empty then
  31.     put card field "# blank lines" into nBlankL
  32.   end if
  33.   if wrtNumbers is true then
  34.     put card field "number list affix" into numberAffix
  35.   end if
  36.   repeat with i = 1 to number of items of cardOrder
  37.     if card field i is not empty then
  38.       put card field i into n
  39.       put item i of cardOrder into item n of order
  40.       get number of card field i
  41.       put card field value(it + 8) into line n of affix
  42.       put 1 + howMany into howMany
  43.     end if
  44.   end repeat
  45.   if card field "3-author example" is empty then
  46.     answer "the 3-author example field must not be empty"
  47.     go to card "format"
  48.     exit closeCard
  49.   else
  50.     put card field "3-author example" into example
  51.     put number of characters in example into n
  52.     repeat with i = 1 to n
  53.       if char i of example is "F" then put "f" into char i of example
  54.       if char i of example is "L" then put "l" into char i of example
  55.     end repeat
  56.     put parseEx(example) into authorOrder
  57.     put separaters(example,authorOrder) into authorsAffix
  58.   end if
  59.   show menuBar
  60. end closeCard
  61.  
  62. function separaters example, authorOrder
  63. put example into string
  64. put authorOrder into order
  65. put empty into outStr
  66. if char 1 of order is "f" then
  67.   delete char 1 to value(offset("first", string) + 4) of string
  68. else
  69.   delete char 1 to value(offset("last", string) + 3) of string
  70. end if
  71. delete char 1 of order
  72. repeat with n = 1 to 5
  73.   if char n of order is "f" then
  74.     put offset("first", string) into head
  75.     put head + 4 into tail
  76.   else
  77.     put offset("last", string) into head
  78.     put head + 3 into tail
  79.   end if
  80.   put char 1 to value(head - 1) of string into line n of outStr
  81.   delete char 1 to tail of string
  82. end repeat
  83. return outStr
  84. end separaters
  85.  
  86. function parseEx example
  87. put example into string
  88. put empty into list
  89. repeat with i = 1 to 3
  90.   put offset("first", string) into head
  91.   put offset("last", string) into tail
  92.   if head > tail then                           -- reverse order
  93.     put list & "lf" into list
  94.     delete char 1 to value(head+4) of string
  95.   else
  96.     put list & "fl" into list
  97.     delete char 1 to value(tail+3) of string
  98.   end if
  99. end repeat
  100. return list
  101. end parseEx
  102.  
  103.  
  104.  
  105. -- part 1 (button)
  106. -- low flags: 00
  107. -- high flags: A000
  108. -- rect: left=460 top=0 right=51 bottom=510
  109. -- title width / last selected line: 0
  110. -- icon id / first selected line: 27056 / 27056
  111. -- text alignment: 1
  112. -- font id: 0
  113. -- text size: 12
  114. -- style flags: 0
  115. -- line height: 16
  116. -- part name: Return
  117. ----- HyperTalk script -----
  118. on mouseUp
  119.   go to card "Options"
  120. end mouseUp
  121.  
  122.  
  123.  
  124. -- part 2 (button)
  125. -- low flags: 00
  126. -- high flags: 8005
  127. -- rect: left=68 top=76 right=98 bottom=177
  128. -- title width / last selected line: 0
  129. -- icon id / first selected line: 0 / 0
  130. -- text alignment: 1
  131. -- font id: 0
  132. -- text size: 12
  133. -- style flags: 0
  134. -- line height: 16
  135. -- part name: Number List?
  136. ----- HyperTalk script -----
  137. on mouseUp
  138.   global wrtNumbers
  139.   get hilite of button "Number List?"
  140.   if it is true then
  141.     set hilite of button "Number List?" to false
  142.     put false into wrtNumbers
  143.   else
  144.     set hilite of button "Number List?" to true
  145.     put true into wrtNumbers
  146.   end if
  147. end mouseUp
  148.  
  149.  
  150.  
  151. -- part 5 (field)
  152. -- low flags: 00
  153. -- high flags: 0002
  154. -- rect: left=157 top=104 right=121 bottom=173
  155. -- title width / last selected line: 0
  156. -- icon id / first selected line: 0 / 0
  157. -- text alignment: 0
  158. -- font id: 3
  159. -- text size: 12
  160. -- style flags: 0
  161. -- line height: 16
  162. -- part name: Title
  163.  
  164.  
  165. -- part 14 (field)
  166. -- low flags: 00
  167. -- high flags: 0002
  168. -- rect: left=157 top=128 right=145 bottom=173
  169. -- title width / last selected line: 0
  170. -- icon id / first selected line: 0 / 0
  171. -- text alignment: 0
  172. -- font id: 3
  173. -- text size: 12
  174. -- style flags: 0
  175. -- line height: 16
  176. -- part name: Authors
  177.  
  178.  
  179. -- part 15 (field)
  180. -- low flags: 00
  181. -- high flags: 0002
  182. -- rect: left=157 top=152 right=169 bottom=173
  183. -- title width / last selected line: 0
  184. -- icon id / first selected line: 0 / 0
  185. -- text alignment: 0
  186. -- font id: 3
  187. -- text size: 12
  188. -- style flags: 0
  189. -- line height: 16
  190. -- part name: Journal
  191.  
  192.  
  193. -- part 16 (field)
  194. -- low flags: 00
  195. -- high flags: 0002
  196. -- rect: left=157 top=178 right=195 bottom=173
  197. -- title width / last selected line: 0
  198. -- icon id / first selected line: 0 / 0
  199. -- text alignment: 0
  200. -- font id: 3
  201. -- text size: 12
  202. -- style flags: 0
  203. -- line height: 16
  204. -- part name: Volume
  205.  
  206.  
  207. -- part 17 (field)
  208. -- low flags: 00
  209. -- high flags: 0002
  210. -- rect: left=157 top=204 right=221 bottom=173
  211. -- title width / last selected line: 0
  212. -- icon id / first selected line: 0 / 0
  213. -- text alignment: 0
  214. -- font id: 3
  215. -- text size: 12
  216. -- style flags: 0
  217. -- line height: 16
  218. -- part name: Number
  219.  
  220.  
  221. -- part 18 (field)
  222. -- low flags: 00
  223. -- high flags: 0002
  224. -- rect: left=157 top=229 right=246 bottom=173
  225. -- title width / last selected line: 0
  226. -- icon id / first selected line: 0 / 0
  227. -- text alignment: 0
  228. -- font id: 3
  229. -- text size: 12
  230. -- style flags: 0
  231. -- line height: 16
  232. -- part name: Beginning Page
  233.  
  234.  
  235. -- part 19 (field)
  236. -- low flags: 00
  237. -- high flags: 0002
  238. -- rect: left=157 top=254 right=271 bottom=173
  239. -- title width / last selected line: 0
  240. -- icon id / first selected line: 0 / 0
  241. -- text alignment: 0
  242. -- font id: 3
  243. -- text size: 12
  244. -- style flags: 0
  245. -- line height: 16
  246. -- part name: Ending Page
  247.  
  248.  
  249. -- part 20 (field)
  250. -- low flags: 00
  251. -- high flags: 0002
  252. -- rect: left=157 top=279 right=296 bottom=173
  253. -- title width / last selected line: 0
  254. -- icon id / first selected line: 0 / 0
  255. -- text alignment: 0
  256. -- font id: 3
  257. -- text size: 12
  258. -- style flags: 0
  259. -- line height: 16
  260. -- part name: Year
  261.  
  262.  
  263. -- part 21 (field)
  264. -- low flags: 00
  265. -- high flags: 0002
  266. -- rect: left=331 top=104 right=121 bottom=433
  267. -- title width / last selected line: 0
  268. -- icon id / first selected line: 0 / 0
  269. -- text alignment: 0
  270. -- font id: 3
  271. -- text size: 12
  272. -- style flags: 0
  273. -- line height: 16
  274. -- part name: title affix
  275.  
  276.  
  277. -- part 22 (field)
  278. -- low flags: 00
  279. -- high flags: 0002
  280. -- rect: left=331 top=129 right=146 bottom=433
  281. -- title width / last selected line: 0
  282. -- icon id / first selected line: 0 / 0
  283. -- text alignment: 0
  284. -- font id: 3
  285. -- text size: 12
  286. -- style flags: 0
  287. -- line height: 16
  288. -- part name: authors affix
  289.  
  290.  
  291. -- part 23 (field)
  292. -- low flags: 00
  293. -- high flags: 0002
  294. -- rect: left=331 top=152 right=169 bottom=433
  295. -- title width / last selected line: 0
  296. -- icon id / first selected line: 0 / 0
  297. -- text alignment: 0
  298. -- font id: 3
  299. -- text size: 12
  300. -- style flags: 0
  301. -- line height: 16
  302. -- part name: journal affix
  303.  
  304.  
  305. -- part 24 (field)
  306. -- low flags: 00
  307. -- high flags: 0002
  308. -- rect: left=331 top=178 right=195 bottom=433
  309. -- title width / last selected line: 0
  310. -- icon id / first selected line: 0 / 0
  311. -- text alignment: 0
  312. -- font id: 3
  313. -- text size: 12
  314. -- style flags: 0
  315. -- line height: 16
  316. -- part name: volume affix
  317.  
  318.  
  319. -- part 25 (field)
  320. -- low flags: 00
  321. -- high flags: 0002
  322. -- rect: left=331 top=204 right=221 bottom=433
  323. -- title width / last selected line: 0
  324. -- icon id / first selected line: 0 / 0
  325. -- text alignment: 0
  326. -- font id: 3
  327. -- text size: 12
  328. -- style flags: 0
  329. -- line height: 16
  330. -- part name: number affix
  331.  
  332.  
  333. -- part 26 (field)
  334. -- low flags: 00
  335. -- high flags: 0002
  336. -- rect: left=331 top=229 right=246 bottom=433
  337. -- title width / last selected line: 0
  338. -- icon id / first selected line: 0 / 0
  339. -- text alignment: 0
  340. -- font id: 3
  341. -- text size: 12
  342. -- style flags: 0
  343. -- line height: 16
  344. -- part name: begin affix
  345.  
  346.  
  347. -- part 27 (field)
  348. -- low flags: 00
  349. -- high flags: 0002
  350. -- rect: left=331 top=254 right=271 bottom=433
  351. -- title width / last selected line: 0
  352. -- icon id / first selected line: 0 / 0
  353. -- text alignment: 0
  354. -- font id: 3
  355. -- text size: 12
  356. -- style flags: 0
  357. -- line height: 16
  358. -- part name: end affix
  359.  
  360.  
  361. -- part 28 (field)
  362. -- low flags: 00
  363. -- high flags: 0002
  364. -- rect: left=331 top=279 right=296 bottom=433
  365. -- title width / last selected line: 0
  366. -- icon id / first selected line: 0 / 0
  367. -- text alignment: 0
  368. -- font id: 3
  369. -- text size: 12
  370. -- style flags: 0
  371. -- line height: 16
  372. -- part name: year affix
  373.  
  374.  
  375. -- part 29 (field)
  376. -- low flags: 00
  377. -- high flags: 0002
  378. -- rect: left=331 top=78 right=95 bottom=433
  379. -- title width / last selected line: 0
  380. -- icon id / first selected line: 0 / 0
  381. -- text alignment: 0
  382. -- font id: 3
  383. -- text size: 12
  384. -- style flags: 0
  385. -- line height: 16
  386. -- part name: number list affix
  387.  
  388.  
  389. -- part 30 (field)
  390. -- low flags: 00
  391. -- high flags: 0002
  392. -- rect: left=156 top=44 right=61 bottom=258
  393. -- title width / last selected line: 0
  394. -- icon id / first selected line: 0 / 0
  395. -- text alignment: 0
  396. -- font id: 3
  397. -- text size: 12
  398. -- style flags: 0
  399. -- line height: 16
  400. -- part name: prefix
  401.  
  402.  
  403. -- part 31 (field)
  404. -- low flags: 00
  405. -- high flags: 0002
  406. -- rect: left=157 top=313 right=331 bottom=479
  407. -- title width / last selected line: 0
  408. -- icon id / first selected line: 0 / 0
  409. -- text alignment: 0
  410. -- font id: 3
  411. -- text size: 12
  412. -- style flags: 0
  413. -- line height: 16
  414. -- part name: 3-author example
  415.  
  416.  
  417. -- part 32 (button)
  418. -- low flags: 00
  419. -- high flags: 2000
  420. -- rect: left=415 top=0 right=36 bottom=454
  421. -- title width / last selected line: 0
  422. -- icon id / first selected line: 21060 / 21060
  423. -- text alignment: 1
  424. -- font id: 0
  425. -- text size: 12
  426. -- style flags: 0
  427. -- line height: 16
  428. -- part name: Help
  429. ----- HyperTalk script -----
  430. on mouseUp
  431.   global expert
  432.   set the lockScreen to true
  433.   go to card "Format-Help" of "Reference Frame"
  434.   if expert is not true then show card field "Format-Help"
  435. end mouseUp
  436.  
  437.  
  438.  
  439. -- part 33 (field)
  440. -- low flags: 00
  441. -- high flags: 0002
  442. -- rect: left=434 top=44 right=61 bottom=450
  443. -- title width / last selected line: 0
  444. -- icon id / first selected line: 0 / 0
  445. -- text alignment: 0
  446. -- font id: 3
  447. -- text size: 12
  448. -- style flags: 0
  449. -- line height: 16
  450. -- part name: # blank lines
  451.  
  452.  
  453. -- part contents for card part 5
  454. ----- text -----
  455. 2
  456.  
  457. -- part contents for card part 14
  458. ----- text -----
  459. 1
  460.  
  461. -- part contents for card part 15
  462. ----- text -----
  463. 3
  464.  
  465. -- part contents for card part 16
  466. ----- text -----
  467. 4
  468.  
  469. -- part contents for card part 18
  470. ----- text -----
  471. 5
  472.  
  473. -- part contents for card part 19
  474. ----- text -----
  475. 6
  476.  
  477. -- part contents for card part 20
  478. ----- text -----
  479. 7
  480.  
  481. -- part contents for card part 21
  482. ----- text -----
  483. , {\it 
  484.  
  485. -- part contents for card part 31
  486. ----- text -----
  487. Last, First, First Last, and First Last
  488.  
  489. -- part contents for card part 22
  490. ----- text -----
  491.  
  492. -- part contents for card part 23
  493. ----- text -----
  494.  
  495. -- part contents for card part 24
  496. ----- text -----
  497. ,} 
  498.  
  499. -- part contents for card part 26
  500. ----- text -----
  501. --
  502.  
  503. -- part contents for card part 27
  504. ----- text -----
  505.  
  506. -- part contents for card part 28
  507. ----- text -----
  508. .
  509.  
  510.  
  511. -- part contents for card part 33
  512. ----- text -----
  513. 1